<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        var arr = [3,4,5,6,7];
        // 循环得到数组内的每个值
        // console.log(arr[0]);
        // console.log(arr[1]);
        // console.log(arr[2]);
        // console.log(arr[3]);
        // console.log(arr[4]);

        // for(var i = 0;i < arr.length;i++){
        //     console.log(arr[i],i,arr);
        // }

        function eact(array,fun){
            for(var i = 0;i < array.length;i++){
                // console.log(array[i],i,arr);
                fun(array[i],i,array);
            }
        }
        // 希望在函数被调用时获取这个值 并在调用时可以做出处理
        // eact(arr,function(a,b,c){
        //     console.log("---",a,b,c);
        // })
        // var arr1 = ["a","b","c"];
        // each(arr1,function(){

        // })

        Array.prototype.each = function(fun){
            for(var i = 0;i < this.length;i++){
                fun(this[i],i,this);
            }
        }
        // arr.each(function(item,index,array){
        //     console.log(item,index,array);
        // })

        function a(n){
            console.log(n); //
            n(100);
            console.log("这是函数a");
        }
        function b(num){
            console.log(num); //100
            console.log("bbbb");
        }
        a(b);

        // 回调函数: 作为参数的函数叫回调函数
        // 将函数b作为参数传递给函数a 在函数a中调用 
        // (那么就可以将函数a中的数据作为参数调用函数b时传递给函数b)
        // 即:函数b就是函数a的回调函数


    </script>
</body>
</html>